package com.itfenghuang.day18;

import com.sun.xml.internal.ws.api.message.Header;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

/*
请求重定向
李四
 */
public class A03_SendRedirect extends HttpServlet {
    /*
 一.请求重定向
    1.请求重定向特点:
        1).地址栏发生了变化,浏览器请求了两次
        2).可以重定向到当前服务器中的其他资源中
                也可以重定向到其他的服务器
    2.常见的响应状态码
        200:响应成功
        302:请求重定向
        400:请求参数问题
        404:请求路径问题
        500:服务器内部错误
  二.请求转发
    1.特点:
        地址栏没有变化,浏览器只发送了一次请求
            只能转发到当前服务器中的其他资源上
  三.请求包含
    请求包含:被包含者响应消息头丢失(王五的响应头没了)

     */
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            resp.setContentType("text/html;charset=utf-8");
//        重定向
//              resp.sendRedirect("/papapa");
//        请求转发
//              RequestDispatcher rt = req.getRequestDispatcher("/papapa");
//              rt.forward(req,resp);
//        设置响应消息头
//                public void setHeader(String name,String value)
//                    resp.setHeader();
//        请求包含
        resp.getWriter().write("李四盖第一层<br/>");
        RequestDispatcher rt = req.getRequestDispatcher("/papapa");
        rt.include(req,resp);


    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doGet(req, resp);
    }
}
